iT邦幫忙

2024 iThome 鐵人賽

DAY 17
0
Mobile Development

IOS的打怪升級之路系列 第 17

鐵人賽第十七天 留言板(三) relam的實際運用

  • 分享至 

  • xImage
  •  

說明

接下來我要來使用relam進在料庫的基本操作。/images/emoticon/emoticon08.gif

實作

資料庫設定為前一天之範例:

class time: Object {
    @objc dynamic var id = 0
    @objc dynamic var hor = 0
    @objc dynamic var min = 0
    convenience init(id:Int ,hor:Int,min:Int) {
        self.init()
        self.id = id
        self.hor = hor
        self.min = min
    }
}

新增

接下來,我們來看看如何在資料庫中新增資料。以下是新增 time物件至 Realm 的範例:

let realm = try! Realm()
let newData = time(id: 1, hor: 12, min: 30) // 建立新的 time 物件
try! realm.write {
    realm.add(newData) // 將物件新增至資料庫
}

修改

要修改資料庫中的資料,我們可以透過 id來查找對應的物件,並進行更新。以下範例示範如何修改 id1time 物件:

let realm = try! Realm() // 確保 Realm 被正確初始化 
let allObjects = realm.objects(time.self)
let nowid = 1 // 要修改的資料的id
// 查找對應的資料
if let editdata = allObjects.filter("id == %@", nowid).first {
                try! realm.write {
                    // 更新找到的對象
                    editdata.min = 15
                    editdata.hor = 6
                }
            } else {
                print("找不到對應的資料")
            }

移除

要移除資料庫中的資料,可以使用 id 來定位並刪除對應的物件。以下範例展示如何移除 id1time 物件:

let realm = try! Realm()
let allData = realm.objects(time.self) // 獲取所有 time 物件
let nowid = 1 // 要刪除的資料的 id 值

if let oneData = allData.filter("id == %@", nowid).first {
    try! realm.write {
        // 刪除找到的資料
        realm.delete(oneData)
    }
} else {
    print("找不到符合的資料")
}

結語

在這篇文章中,我們學習了如何在 Swift 中使用 Realm 資料庫進行基本的 CRUD(新增、修改、刪除)操作。這些技巧是建立資料驅動應用程式(例如留言板、日程管理等)的基礎。透過熟練掌握這些操作,可以讓我們更靈活地管理應用程式中的資料。希望這篇文章對你有所幫助!/images/emoticon/emoticon07.gif


上一篇
鐵人賽第十六天 留言板(二) 安裝realm及建立資料表
下一篇
鐵人賽第十八天 留言板(四) tableview設定
系列文
IOS的打怪升級之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言